Page({
  data: {
    visitorList: [], // 渲染列表
    isEmpty: false, // 判断是否有数据
    flag: false, // 节流阀
    current: 1, // 页码
    pageSize: 5, // 每页数量
    pageTotal: null // 总页数
  },
  onLoad() {
    // 获取访客列表
    this.getVisitorList()
  },
  async getVisitorList() {
    if (this.data.flag) return
    if (!(this.data.pageTotal === null || this.data.current <= this.data.pageTotal)) return
    // 开始请求，节流阀打开
    this.setData({ flag: true })
    // 调接口
    const { code, data: { rows: visitorList, pageTotal } } = await wx.http.get('/visitor', { current: this.data.current, pageSize: this.data.pageSize })
    this.setData({ pageTotal })
    // 检测是否调用成功
    if (code !== 10000) return wx.utils.toast()
    this.setData({
      visitorList: [...this.data.visitorList, ...visitorList],
      isEmpty: visitorList.length === 0
    })
    // 请求完毕，节流阀关闭
    this.setData({ flag: false })
    // 页码数量+1
    this.setData({ current: this.data.current + 1 })
  },
  // 滚动触发
  getMoreVisitor() {
    this.getVisitorList()
  },
  // 点击跳转
  goPassport(e) {
    wx.navigateTo({
      url: '/visitor_pkg/pages/passport/index?id=' + e.mark.id,
    })
  }
})
